; homez.g                                                  ; 调用归位Z轴脚本
; M98 P"0:/sys/homex.g" Z15                                ; 调用方法(Z轴归位前, Z轴先下沉, 归位后,恢复下沉前的Z轴位置, 防止撞头)
                                                           ; Z15 下沉15mm

var lowerZ =0                                              ; 初始化下沉距离参数

;if !move.axes[3].homed                                     ; 挂头锁如果没归位, 需要先归位
;    M98 P"homec.g"                                         ; 归位挂头锁

;M98 P"/macros/Coupler - Unlock"                            ; 打开挂头锁
set global.ToolOnHit = sensors.gpIn[0].value
if global.ToolOnHit = 1
    M98 P"0:/sys/ToolDetect/ToolDetectLoop.g"              ; 检测是否已经挂载了喷头, 如果挂载了要先卸掉

if !move.axes[3].homed                                     ; 挂头锁如果没归位, 需要先归位
    M98 P"homec.g"                                         ; 归位挂头锁

if exists(param.Z)                                         ; 判断是否带Z轴下沉距离参数
    set var.lowerZ ={param.Z}                              ; 如果带Z轴下沉距离参数, 则设置传进来的Z轴下沉距离参数
else
    set var.lowerZ =global.zHomeLowerZ                     ; 如果不带Z轴下沉距离参数, 则设置默认Z轴下沉距离参数

G91                                                        ; 使用相对坐标
G1 H2 Z{var.lowerZ} F5000                                  ; 下沉Z轴，保留归位距离
G90                                                        ; 使用绝对坐标
G1 X{global.xProbe} Y{global.yProbe} F50000                ; 移动到平台中点再归位

M558 F1000                                                 ; 归位速度设置成快速
G30                                                        ; Z轴归位
M558 F300                                                  ; 归位速度设置成慢速 
G30                                                        ; Z轴归位